Different companies manufacture different wireless devices, e.g., cellular telephones, personal digital assistants, etc., for use on one or more telecommunication carrier's communication networks. Many times, particular carriers apply different requirements which devices must meet in order to be able to operate on the carrier's network. Device manufacturers and vendors modify the devices to meet carrier-specific requirements.
FIG. 1 depicts a high level conceptual diagram of a single manufacturer 100 producing multiple wireless devices 102, 104, 106 useable with one or more telecommunication carriers 108, 110, 112. In particular, for each software product, i.e., set of executable instructions, to be distributed for a device 102, 104, 106, the software platform of the device may vary depending not only on the particular device, but also based on with which carrier the device has been configured to operate. As depicted in FIG. 1, device 102 may be configured to operate in conjunction with carriers 108, 110, while device 104 may be configured to operate in conjunction with carrier 110 and device 106 may be configured to operate in conjunction with carriers 108, 112. Because of the number of possible combinations, development of software products for each device 102, 104, 106 may be difficult and expensive as a different version may be necessary for not only each device, but for each carrier, as well.
End users of such wireless devices may desire/need to use the same device in conjunction with different carriers, e.g., better/different service coverage area, pricing, features, etc. After a manufacturer configures a wireless device for a particular carrier, the device user is required to take/send the device to a second carrier to which the user is switching the device for operation. Typically, the second carrier replaces the controlling software of the device with software configured to the second carrier requirements for operating on the carrier's network. This process is time-consuming and inconvenient for the end user and requires additional resources of the second carrier.